using System.Collections;
using System.Collections.Generic;
using UnityEngine;

namespace XFramework
{
    public interface IContainer<T> where T : MonoBehaviour
    {
        void Start();

        T AddItem(int id, object data = null);

        T GetUnUsedItem();

        T GetItem(int id);

        void RemoveItem(int id, bool isDestroy = true);
        void RemoveItem(T item, bool isDestroy = true);

        void RemoveAllItem(bool isDestroyAll = true);

        void OnDestroy();
    }

}